package com.fangcun.service.api;

import com.fangcun.bean.api.user.request.H5BindPhoneRequest;
import com.fangcun.bean.api.user.request.H5WechatLoginRequest;
import com.fangcun.bean.api.user.request.PhoneLoginRequest;
import com.fangcun.bean.api.user.request.SendVerificationCodeRequest;
import com.fangcun.bean.api.user.request.UserUpdateRequest;
import com.fangcun.bean.api.user.request.XcxLoginRequest;
import com.fangcun.bean.api.user.response.UserResponse;
import com.fangcun.common.exception.ProAffairException;
import com.fangcun.common.exception.ProException;

/**
 * @作者： 陳曉鬆 @时间： 2020年4月27日 - 上午9:27:09 @description：->
 */
public interface ApiUserService {

	/** 小程序登录 **/
	public UserResponse xcxLogin(XcxLoginRequest request) throws ProAffairException;

	/** 手机号码登录 **/
	public UserResponse phoneLogin(PhoneLoginRequest request) throws ProAffairException;

	/** 小程序授权修改资料 **/
	public UserResponse updateUser(UserUpdateRequest request) throws ProAffairException;

	/** 绑定手机号 **/
	public UserResponse bindPhoneNumber(Long userId, String phone, String code) throws ProAffairException;

	/** 发送验证码 **/
	public void sendVerificationCode(SendVerificationCodeRequest request) throws ProAffairException;

	/** h5微信授权登录 **/
	public UserResponse h5WechatLogin(H5WechatLoginRequest request) throws ProAffairException;

	/** 获取用户资料 **/
	public UserResponse userMessage(Long userId) throws ProException;

	/** h5登录绑定手机号 **/
	public UserResponse h5BindPhone(H5BindPhoneRequest request) throws ProAffairException;
	
}
